System for secure transfer of online privileges

ABSTRACT

Methods and apparatus for transferring privileges in a computer system. In one implementation, a system for transferring online privileges includes: a game server having a network connection and storing data providing an online game and game environment; a game database connected to said game server, said game database storing data representing one or more game items, data representing a first user game account, and data representing a second user game account, said game item associated with said first user game account; an auction server having a network connection and connected to said game server though said network connections, and storing data providing an online auction for game items; and an auction database connected to said auction server, said auction database storing data representing one or more game items received from said game server, data representing a first user auction account, and data representing a second user auction account.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority of co-pending U.S.Provisional Patent Application Ser. No. 60/673,042 entitled “System forSecure Transfer of Online Privileges”, filed Apr. 19, 2005. Benefit ofpriority of the filing date of Apr. 19, 2005 is hereby claimed, and thedisclosure of the Provisional Patent Application is hereby incorporatedby reference.

BACKGROUND

Online auctions on the Internet for real-world items have become verypopular in the past decade. Many people have enjoyed being able to offergoods to be sold to the very large pool of potential buyers provided bythe Internet while others have enjoyed being able to purchase many typesof goods from so many potential sellers. Most of the items sold aretypical of what might be sold at live auctions, stores, yard sales, andso on. However, as the popularity of online auctions has grown, buyersand sellers have sometimes attempted to sell items that are lessordinary.

Another popular online activity is online gaming, such as through theInternet. Some online games are role-playing games (or RPG's) for verylarge numbers of players (sometimes called MMOG's, for “massivelymultiplayer online games,” or MMORPG's), such as the Everquest™ games bySony Online Entertainment, Inc., where a player controls a game personaor character. In the course of the game, a character can acquire variousgame items, such as money, weapons, equipment, and so on. These gameitems are represented by data stored for the game, and are not actualphysical items (other than the data). When a character has a game itemin the game, the game indicates the relationship through themanipulation of data in the game and the character has access to certainprivileges associated with that item (e.g., can use an object, wield aweapon, or spend money). Some game items are very rare or difficult toobtain in the game, requiring great skill or effort to acquire. Thesetypes of game items can be very desirable for players of the game.Characters in the game can acquire game items from one another, such asby trading one game item for another (e.g., paying game money to buy agame weapon), and so gain access to the privileges of new game items.The game system controls the data representing the characters and theitems and so the game controls the transfer of a game item in the game.

At a new nexus of these two areas, some players of online games attemptto sell game items for real money using online auctions, similar toselling ordinary physical items. In this way a player could acquire agame item without having to obtain it in the ordinary course of thegame. However, arranging a secure exchange of real money for a game itemcan be difficult. For example, a player typically does not have controlover the data in the game. Similarly, an online auction has no controlover the game item data either. While the players may agree to thetransfer, an unscrupulous player may try to take advantage by notperforming. Hence, it can be difficult for the buyer to ensure that boththe buyer (the buyer's character) will actually receive the game item inthe game and that the seller will actually receive the money in the realworld.

SUMMARY

The present invention provides methods and apparatus for transferringprivileges in a computer system. In one implementation, a system fortransferring online privileges includes: a game server having a networkconnection and storing data providing an online game and gameenvironment; a game database connected to said game server, said gamedatabase storing data representing one or more game items, datarepresenting a first user game account, and data representing a seconduser game account, said game item associated with said first user gameaccount; an auction server having a network connection and connected tosaid game server though said network connections, and storing dataproviding an online auction for game items; and an auction databaseconnected to said auction server, said auction database storing datarepresenting one or more game items received from said game server, datarepresenting a first user auction account, and data representing asecond user auction account.

In another implementation, a method of transferring privileges includes:selecting a game item in an online game provided by a game server,wherein said game item is represented by item data stored in a gamedatabase connected to said game server, said item data is associatedwith a first user account, and said item data has an associatedprivilege in said online game; retrieving said item data from said gamedatabase; transferring auction item data and a first user identifier toan auction server, said auction item data corresponding to said itemdata and said first user identifier corresponding to said first useraccount; disabling said item data stored in said game database so thatsaid privilege is not available in said online game; storing saidtransferred data in an auction database connected to said auctionserver; presenting an auction for said game item at said auction server;accepting one or more bids at said auction server for said game item;determining a winning bid for said game item from among accepted bids,said winning bid indicating a second user identifier and said seconduser identifier corresponding to a second user account with said gameserver; transferring money based on said winning bid from an accountindicated by said second user identifier to an account indicated by saidfirst user identifier; updating said item data stored in said gamedatabase so that said item data is associated with said second useraccount; and enabling said item data stored in said game database sothat said privilege is available in said online game.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a representation of one implementation of a system fortransferring privileges.

FIG. 2 shows a block diagram of one implementation of a game server andan auction server.

FIGS. 3A and 3B show a flowchart of one implementation of transferring aprivilege by conducting an auction for a game item having thatprivilege.

DETAILED DESCRIPTION

The present invention provides methods and apparatus for transferringprivileges in one computer system based on a transaction involving asecond computer system. In one implementation, an online game systemtransfers privileges for a game item from a first character to a secondcharacter based on an online auction and payment of money from a buyerto a seller.

An illustrative example describing one implementation is presentedbelow. This example is not exhaustive and additional implementations,examples, and variations are also described later.

In one example, an online service company has established an auctionsystem for secure transfers of online privileges. The auction systemfacilitates the transfer of online privileges for money (e.g., U.S.dollars).

The online company also has established an online game system. A playerin the game has control over game items such as characters, objects,money, or locations. The player does not own that data representingitems or own any rights in the data or items. The online company allowsthe player to use the items in the game as part of the game serviceprovided through the game system. A player can place one of these itemsfrom the game up for sale in the auction system. The player cannotactually sell the item (it does not exist) and cannot sell the data orany rights (the player does not have any ownership), so the sellingplayer is selling that player's use and control privileges for that itemin the online game (as defined by the online company). The onlinecompany will disable the privileges from the seller and add theprivileges to the account for the purchaser of the item so that thepurchaser gains those privileges in the game. For example, a player hasacquired 100 gold coins in the game. The player can sell the use ofthose coins to another player in the auction system. After thetransaction, the selling player loses the use of the coins and thepurchasing player then can use those coins in the game.

In one example of the operation and interaction of these systems, thegame system includes one or more game servers with Internet connections.The game servers operate to provide a game environment to users loggedinto the system through the Internet. The game servers are connected toone or more databases storing data representing user information andgame assets, including data for items for which players can gain onlineprivileges. The auction system includes a server with an Internetconnection. The auction system operates to provide an auction service tousers logged into the system. The auction system also includes one ormore databases storing data representing user information and gameassets. The user information includes financial information for a userto accomplish the transfer of money, such as account information with afinancial service (e.g., a credit card or PayPal™). The auction systemcommunicates with the game system over a network, such as through asecure connection established over the Internet.

To transfer a privilege, a user that is logged into the game systemselects an item in the game and indicates that item is to be auctionedthrough the auction system. The game system sends a complete copy ofdata for the selected item to the auction system to be stored in adatabase of the auction system. The auction system builds an auctionprofile for the item, including information associating the item withthe auctioning user. The game system deletes the data for the item inthe game system's database, including the user's privileges for thatitem in the game. The game system sends a message (e.g., an email) tothe user to inform the user that the item is ready for auction in theauction system.

The user logs into the auction system and accesses the auction profilefor the transferred item. The user sets desired auction parameters, suchas length of the auction, starting price, a reserve price (minimumacceptable price to complete transfer), and an instant purchase price(price that immediately ends auction, higher than the reserve price).The user confirms the user's financial account information and how theuser would like to receive payment. When the user is satisfied with theauction setup, the user confirms that the auction is to begin. A listingfee may be charged to the user for placing the item up for bid. If theuser will be charged an auction listing fee, the user confirms thecharge at this time as well.

When the auction begins, the auction system initiates an auction processallowing users logged into the system to place and review bids for theitem. Users of the auction system can log in and browse or searchthrough items placed up for auction. A user can review the informationfor the item that was sent from the game system and place a bid throughthe auction system. When a bid is placed by a bidding user, the auctionsystem verifies that the financial information for the bidding user isvalid. The auction system also verifies with the game system that thebidding user has a valid account with the game system to receive theitem. After verifying the bid, the auction system accepts and recordsthe bid. Other users can then place additional bids. The auction endswhen the time period expires or a bid matching the instant purchaseprice is accepted.

When the auction ends, the auction system determines if the highestaccepted bid meets the reserve price (an instant purchase price, ifestablished, is above the reserve price). If the highest accepted bid isat or above the reserve price, the auction is successful and the userthat placed the winning bid will receive the purchased privilege—use ofthe auctioned item in the game. The auction system completes thefinancial transfer from the purchasing user's account to the auctioninguser's account. As soon as the auction system confirms the financialtransaction has completed or is approved, the auction system sends acopy of the data for item back to the game system with informationindicating the purchasing user, such as the purchasing user's gameidentification information. The game system restores the item in thegame environment and updates the user information of the purchasinguser. The game system sends notification messages to the selling userand the purchasing user. When the selling user logs into the game systemagain, the selling user will not be able to use the item. When thepurchasing user logs into the game system again, the purchasing userwill be able to use the item.

If the highest accepted bid is below the reserve price, the auction isnot successful and the user that placed the item up for auction willretain the privilege—use of the auctioned item in the game. The user canrequest a new auction and begin the setup process again. If the userdecides not to request a new auction, the auction system sends a copy ofthe data for item back to the game system with information indicatingthe auctioning user. The game system restores the item in the gameenvironment and updates the user information of the auctioning user. Thegame system sends an email confirmation notice to the user. When theauctioning user logs into the game system again, the auctioning userwill be able to use the item.

In this example, the online company facilitates the transfer ofprivileges for game items between users. The users are assured that thetransfer will occur and that the item in question is what it ispurported to be. The online company enhances the game experience for itsusers and so improves its business.

Referring now to the figures, FIG. 1 shows a representation of oneimplementation of a system for transferring privileges. A game server1100 is connected to an auction server 1200 through a network 1300. Aseller client 1400 and a buyer client 1500 are also connected to thenetwork 1300.

The game server 1100 is a network server system including computerhardware and software to support the operation of and storage for anonline game environment and game play, such as that used to supportMMORPG's. The game server 1100 supports one or more online games andprovides an interface to each game for clients connected to the gameserver 1100 through the network 1300. The game server 1100 stores datarepresenting game environments and game items, and data for useraccounts. A player of a game has a corresponding user account stored onthe game server 1100 (or multiple accounts).

The auction server 1200 is a network server system including computerhardware and software to support the operation of and storage for anonline auction service, such as that used to support online auctions.The auction server 1200 supports auctions for buyers and sellers andprovides an interface to the auctions for clients connected to theauction server 1200 through the network 1300. The auction server 1200stores data representing the auctions and items being auctioned, anddata for user accounts. A buyer or seller has a corresponding useraccount stored on the auction server 1200 (or multiple accounts).

The network 1300 is a computer network, such as the Internet, providingdirect and/or indirect network connections between devices connected tothe network 1300. In other implementations, different or additionalnetworks can be used, such as a phone network or a private network.

The seller client 1400 is a computer system, such as a desktop or laptopcomputer, or a game console. The seller client 1400 stores and executesclient software to interact with the game server 1100 and the auctionserver 1200. Game client software supports playing an online gameprovided by the game server 1100. Auction client software supportsrequesting and participating in online auctions provided by the auctionserver 1200. In one implementation, the game client software and theauction client software are integrated into one application program orapplication suite. The buyer client 1500 is a computer system similar tothe seller client 1400. In another implementation, one (or both) of theclients is a different type of computer system, such as a portabledevice (e.g., a PDA or portable game device) or mobile phone includingappropriate client software (e.g., a limited version of the regular gameclient software so that a subset of game features can be accessed). Inone such implementation, the game server and auction server providedifferent levels of access to different types of client systems.

The configuration and relationship of the game server and auction serverare flexible and can vary in different implementations. In oneimplementation, the game server and the auction server are parts of thesame system, or share some components (e.g., share storage, but haveseparate network interfaces). In one such implementation, the gameserver operates an auction for players in the game and the auctionserver provides an interface to that auction for users outside the game.In another implementation, the game server and auction server areoperated by different companies. In one such implementation, one companyoperates a game server and the auction server and a second companyoperates a different game server for a different game. In thissituation, the auction server can support auctions for game items fromeither game.

FIG. 2 shows a block diagram of one implementation of a game server 2100and an auction server 2200. The game server 2100 is a network computersystem and includes a game database 2110, a game control system 2120,and a network interface 2130. Alternatively, the game database can beexternal. The auction server 2200 is a network computer system andincludes an auction database 2210, an auction control system 2220, and anetwork interface 2230. Alternatively, the auction database can beexternal. In another implementation, either or both servers includemultiple server systems (e.g., to distribute processing and storage forload balancing). Both servers 2100, 2200 include additional hardware andsoftware typical of computer server systems (e.g., power and a userinterface), though these components are not specifically shown in FIG. 2for simplicity. In another implementation, the servers share components(e.g., using a common database).

In the game server 2100, the game database 2110 is a storage system,such as one or more hard drives (e.g., a RAID system). The game database2110 stores data used in and for an online game (or for multiple games).Some of the data represents game items 2112 that are assets available aspart of the game, such as characters, objects, places, and so on. A gameitem has one or more privileges and the data for a game item indicatesany privileges associated with that game item. The privileges of an itemare the functions or operations allowed by possessing that item. Forexample, a weapon game item has defined characteristics (e.g., amount ofdamage inflicted). A coin or money game item has a value in the gameeconomy and can be spent or traded (e.g., 100 coins can buy a loaf ofbread), though that value may fluctuate. The data for a character gameitem indicates what other game items are possessed by the character inthe game (e.g., what equipment the character has). When a character hasa game item in the game, the character has access to the privilegesassociated with that game item (possibly subject to other gameconditions). In another implementation, game items include abstractitems, such as memberships, levels of membership, titles, or names. Inanother implementation, game items have subsets of features orprivileges that can be divided (e.g., rooms in a house). The data for agame item also includes an identifier for the item. In oneimplementation the data for a game item includes a key or digitalsignature to verify that the data is data from the game server (e.g.,when the data for the game item is passed back and forth with theauction server).

Game items can be acquired or traded within the game by characters.Alternatively, players outside the game environment can trade itemsusing the game server (e.g., in a defined player interface forplayer-to-player interaction). In one implementation, users do not ownthe game items; they merely have limited rights to use the game items inaccordance with a license agreement (which may or may not incorporateother rules) promulgated by the owner of the online game. In anotherimplementation, users may own some or all of the game items.

Some data also represents the game environment 2114, such as video andaudio data to present the game items 2112 and game locations (some ofwhich may be game items), and data used to implement the game (e.g.,state information and physics information). Some data represents usergame accounts 2116 for users registered with the game server 2100, suchas identifier, name, security information, billing information,financial account information (e.g., banking, credit card, online fundstransfer such as PayPal™), and game items 2112 associated with the gameaccount 2116.

The game control system 2120 controls the operation of the online gamesupported by the game server 2100. In one implementation, the gamecontrol system 2120 is integrated with the general control system forthe game server 2100 that controls the operation of the game server 2100(not shown in FIG. 2). The game control system 2120 includes hardwareand software to store and execute the game software providing the onlinegame. The control system 2120 accesses and modifies the data stored inthe game database 2110 in the course of executing the game software.

The network interface 2130 in the game server 2100 provides one or moreconnections to a network (e.g., the Internet) to connect the game server2100 to other servers (e.g., the auction server 2200 or financialservers) and to clients (e.g., client systems playing the online game).

In the auction server 2200, the auction database 2210 is a storagesystem, such as one or more hard drives (e.g., a RAID system). Theauction database 2210 stores data used in and for an online auction (orfor multiple auctions). Some of the data represents auction items 2212that are up for sale in an auction, such as physical objects orservices, and game items 2112 from the game server 2100. Some datarepresents user auction accounts 2214 for users registered with theauction server 2200, such as identifier, name, security information,billing information, financial account information (e.g., banking,credit card, online funds transfer such as PayPal™), and auction items2212 associated with the auction account 2214.

The auction control system 2220 controls the operation of the onlineauction supported by the auction server 2200. In one implementation, theauction control system 2220 is integrated with the general controlsystem for the auction server 2200 that controls the operation of theauction server 2200 (not shown in FIG. 2). The auction control system2220 includes hardware and software to store and execute the auctionsoftware providing the online auction. The control system 2220 accessesand modifies the data stored in the auction database 2210 in the courseof executing the auction software.

The network interface 2230 in the auction server 2200 provides one ormore connections to a network (e.g., the Internet) to connect theauction server 2200 to other servers (e.g., the game server 2100 orfinancial servers) and to clients (e.g., client systems reviewing orparticipating in auctions).

The game server 2100 and the auction server 2200 communicate byexchanging data through their network interfaces 2130, 2230. Asdescribed below, in the course of an auction for a game item, data forthe game item and data for the game account associated with the gameitem is transferred back and forth between the two servers 2100, 2200,represented by the dashed lines in FIG. 2.

FIGS. 3A and 3B show a flowchart of one implementation of transferring aprivilege by conducting an auction for a game item having thatprivilege. In FIGS. 3A and 3B, various actions and events arerepresented by labeled blocks, described below. In addition, the blocksare positioned in columns to reflect which party is taking the action.Initially, a game server is providing an online game and has stored datarepresenting various game items and privileges associated with the gameitems. Game users can connect to and interact with the game serverthrough the Internet using game client software. A first user (the“seller”) is executing game client software on a computer system and hasestablished a network connection between the computer system and thegame server. The seller has a game account with the game server and isplaying the online game using that account. The game account hasassociated with it multiple game items (e.g., characters controlled bythe seller and game items possessed by those characters in the game).The seller has decided to auction one of the seller's game items throughthe auction server. The auction server is providing an online auctionservice through a website. Auction users can connect to and interactwith the auction server over a network, such as through the Internetusing a web browser. In another implementation, the game server providesan auction interface, either in the game or outside the game, accessiblethrough the game client software. The game server auction interface canalso be accessible through other network software, such as a web browser(e.g., allowing players in the game and non-players to participate inthe auction; or allowing partial access to the auction through a webbrowser, so that a player can view the auction but not bid while outsidethe game).

The seller selects a game item to auction through the seller's computersystem, block 3010, and requests an auction for the selected game item,block 3020. The game server selects the indicated item and confirms thatthe game item is associated with the seller's game account. The gameserver does not permit the seller to auction game items that are notassociated with the seller's game account and rejects such requests. Theseller makes the selection and request from inside the game (that is,while playing the game), such as by having the character enter anauction house in the game and present an item to an auctioneer.Alternatively, the seller can use an auction interface provided by thegame server that operates outside of the game (e.g., similar to a logininterface) or indirectly through an interface provided by the auctionserver. In another implementation, the seller can select a subset ofprivileges or partial use of a game item as the subject of an auction.For example, a seller may select to rent out a room of a house orauction the use of a weapon for one month.

After confirming the auction request, the game server negotiates auctionparameters with the seller, block 3030. The auction parameters indicatehow the auction is to be performed, such as auction form, startingprice, reserve price, time limit, etc. Once the seller confirms theauction parameters, the game server provides the auction parameters tothe auction server and the auction server begins setting up the auction,block 3040. The auction server confirms that the seller has an accountwith the auction server (or creates one if not) and associates theauction with that account. The auction server builds an announcement forthe auction so that users of the auction server can be informed.

The game server then retrieves or accesses the data for the game itemand disables the selected game item, block 3050. Once a seller places anitem up for auction, the seller no longer has access to the privilegesof the item, unless the auction fails. In one implementation, that gameitem is removed from the game (destroyed) and the data for the game itemis stored in a separate location (or no longer associated with theseller's character or user account; the game server maintainsinformation indicated from which seller a game item was taken to be ableto return the item if the auction fails). In another implementation, thegame item is disabled so that it can no longer be used in the game(e.g., using a flag or list), but the item is not removed from the game.

The game server sends a copy of the data for the game item to theauction server, block 3060, and the auction server receives and storesthe data, block 3070. The game server sends an identifier with the datafor the game item to identify the auction account of the seller (or toidentify the seller to the auction server so the auction server willfind the seller's auction account). In one implementation, the gameserver uses a secure connection to transfer the data to the auctionserver. In another implementation, the game server encrypts some or allof the game item data using a key before sending the data (e.g., toprevent the data from being altered while outside the game server). Inanother implementation, the game server sends only part of the data fora game item to the auction server, or sends a reference to the datastored by the game server (e.g., a pointer or index; convenient when thegame server and auction server share storage). The auction serverassociates the data for the game item with the auction informationpreviously received. In another implementation, the game server sendsthe auction parameters and information to the auction server with thedata for the game item instead of separately.

The auction server opens and presents the auction according to thereceived parameters, block 3080. If there is a specific opening timerequested, the auction opens at that time. The auction server can haveadditional parameters set by the auction server on how to run theauction (e.g., minimum bid increment, how to end the auction, extendingthe auction time limit when bids are received near the end of the timelimit). The auction server sends a notification to the seller that theauction is now open, block 3090. In one implementation, the auctionserver sends an email message to the seller. In other implementations,different or additional notification modes can be used, such as instantmessaging, an in-game message from the game server, a pop-up dialog, andso on.

The auction server proceeds to run the auction according to the auctionparameters, block 3100. The auction server provides information toreviewing auction users and reviews and accepts bids as they arepresented. In one implementation, the auction server requires aconfirmation of available funds before accepting a bid.

A second user (the “buyer”) opens a connection to the auction server andselects the game item up for auction, block 3110. The buyer is executinga web browser on a computer system and has established a networkconnection between the computer system and the auction server. The buyerhas an auction account with the auction server and is interested inbuying the selected item. The buyer also has a game account with thegame server (if the buyer does not have a game account and does notcreate one, the auction server will retain the data for the game item inthe buyer's auction account; the buyer could then re-auction the gameitem, such as to another player of the game). The buyer places a bidthat the auction server accepts and determines is the winning bid forthe game item, block 3120. The auction server accepts the winning bidand closes the auction, block 3130. The auction server determines thatthe buyer's bid is the winning bid according to the auction parameters(e.g., the buyer's bid is submitted before the end of the auction, thebid is higher than a set reserve price, and the bid is the highest bidmade during the auction). The auction server notifies the seller thatthe auction is closed, block 3140. In one implementation, the auctionserver also informs the seller of the buyer's identity. The auctionserver notifies the buyer that the auction is closed and that the buyerhas placed the winning bid, block 3150.

After closing the auction, the auction server confirms payment from thebuyer to the seller, block 3160. In one implementation, the auctionserver facilitates a transfer of funds (e.g., in U.S. dollars) from thebuyer to the seller (e.g., by providing appropriate information to anonline funds transfer system, such as PayPal™). In anotherimplementation, the auction server uses the auction accounts to storefinancial information, such as credit card and banking information, tocause a transfer of money or direct payment. In another implementation,the auction server credits and debits balances of the seller's andbuyer's auction accounts or provides the information to the game serverso the game server can credit and debit balances of the seller's andbuyer's game accounts (e.g., to be applied against fees for using theonline game or for additional services provided by the game server, suchas enhanced privileges or storage). In another implementation, thepayment is made in game currency for the game provided by the gameserver and so the game server confirms the “payment” (e.g., the auctionserver is acting as an out-of-game auction site or second interface toauctions for the in-game economy, or a player can sell game items to theoperator of the game server for real money). In another implementation,the auction server deducts a service fee from the payment and retainsthat fee.

If the payment is confirmed, the auction server notifies the seller,block 3170, the buyer, block 3180, and the game server, block 3190, thatthe auction succeeded and that payment has been confirmed. The sellerreceives the agreed upon money from the buyer through the appropriatemechanism (as described above). The auction server sends the buyer'sidentifier back to the game server with the confirmation to confirmwhich auction succeeded. The auction server also sends an identifier tothe game server to identify the game account of the buyer (or toidentify the buyer to the game server so the game server will find thebuyer's auction account). In another implementation, the auction serverchecks with the game server whether the buyer is allowed to receive thegame item (e.g., the buyer does not have a game account, or receiving anew character game item would exceed the number of characters the buyeris allowed to have) before confirming the auction has succeeded.

If the payment is not confirmed (e.g., insufficient funds), the auctionserver determines that the auction has failed and notifies the seller,buyer, and game server that the auction failed and that no payment willoccur. In this case, the game server will return the game item to theseller in the game or offer the seller the option of setting up a newauction. In one implementation, the auction server sends the data forthe game item back to the game server and the game server confirms thatthe data is unchanged (e.g., by checking for a key or signature or bydecrypting the data).

When the game server receives confirmation from the auction server thatthe auction has succeeded, the game server transfers the game item fromthe seller's game account to the buyer's game account, block 3200. Thegame server updates the data for the game item to reflect the transferto the new account (if that information is stored with item data aswell). The game server notifies the seller, block 3210, and the buyer,block 3220, of the item transfer. The game server moves the data for theauctioned game item to the game account of the buyer (or moves theappropriate identifier or reference). The game server enables the gameitem for the buyer, block 3230, and notifies the buyer that the item isenabled and ready for use in the game, block 3240. The game serverenables the game item by reversing the process of disabling describedabove (e.g., adjusting an enable/disable flag). When the buyer returnsto the game, the buyer can use the game item and its privileges in thegame, block 3250. The buyer can select the new game item and specify howto use it (e.g., which character will use an item of equipment).

The sequence shown in FIGS. 3A and 3B is one example of the process. Inother implementations, different sequences can be used, such ascompleting the financial transaction after transferring the game itemdata, or revoking the transfer of game data from one game account toanother if the payment later fails. In another example, notificationsseparated in FIGS. 3A and 3B can be combined.

In another implementation, the auction server provides a recommendationservice or “wish list” for players. A player registers with therecommendation service and indicates one or more preferences. Thepreferences indicate a game and types of game items (or specific gameitems) that the player is interested in acquiring in the game. Theauction server periodically checks whether an auction is open or goingto open for a game item matching the supplied preferences. In anotherimplementation, the auction server maintains a list of items up forauction and periodically checks that list. Alternatively, when a newitem is up for auction, the auction server checks the preferences ofplayers registered with the recommendation service. In anotherimplementation, the auction server automatically generates preferencesfor registered players (or all players) based on the game itemsassociated with the players' accounts (e.g., by querying the game serverfor player information). For example, if a player has a particular typeof character in the game and that character can only use certain typesof equipment, the auction server can build preferences to recommenditems for auction that are usable by the character and that are morepowerful (in game attributes) than those already held by the character.In another implementation, the game server provides the recommendationservice instead of the auction server (or in addition to or inconjunction with the auction server). For example, the game serverperiodically polls the auction server for matches based on preferencesreceived by the game server.

The various implementations of the invention are realized in electronichardware, computer software, or combinations of these technologies. Someimplementations include one or more computer programs executed by aprogrammable processor or computer. For example, referring to FIG. 1, inone implementation, the game server and the auction server each includeone or more programmable processors. In general, each computer includesone or more processors, one or more data-storage components (e.g.,volatile or non-volatile memory modules and persistent optical andmagnetic storage devices, such as hard and floppy disk drives, CD-ROMdrives, and magnetic tape drives), one or more input devices (e.g., miceand keyboards), and one or more output devices (e.g., display consolesand printers).

The computer programs include executable code that is usually stored ina persistent storage medium and then copied into memory at run-time. Theprocessor executes the code by retrieving program instructions frommemory in a prescribed order. When executing the program code, thecomputer receives data from the input and/or storage devices, performsoperations on the data, and then delivers the resulting data to theoutput and/or storage devices.

Various illustrative implementations of the present invention have beendescribed. However, one of ordinary skill in the art will see thatadditional implementations are also possible and within the scope of thepresent invention. For example, while the above description focuses onimplementations for auctions for game items, the auctions can also beused for the transfer of privileges associated with other types of data,such as shopping privileges, or access to audio or video data.Similarly, the auctions can be presented as in-game or out-of-gameservices, or a combination. The auction can be replaced with a simplesale system, where a set price is used rather than bidding. Alternativesystem configurations can also be used, such as distributed processingor storage systems.

Accordingly, the present invention is not limited to only thoseimplementations described above.

1. A system for transferring online privileges, comprising: a gameserver having a network connection and storing data providing an onlinegame and game environment; a game database connected to said gameserver, said game database storing data representing one or more gameitems, data representing a first user game account, and datarepresenting a second user game account, said game item associated withsaid first user game account; an auction server having a networkconnection and connected to said game server though said networkconnections, and storing data providing an online auction for gameitems; and an auction database connected to said auction server, saidauction database storing data representing one or more game itemsreceived from said game server, data representing a first user auctionaccount, and data representing a second user auction account.
 2. Thesystem of claim 1, wherein: the data for a game item includes a key. 3.The system of claim 1, wherein: the data for a game item stored in saidauction database is encrypted using a key stored in said game server. 4.The system of claim 1, wherein: said game database and said auctiondatabase are parts of a combined database.
 5. The system of claim 1,wherein: said game server and said auction server are two serverinterfaces for the same online system.
 6. The system of claim 1,wherein: said game server and said auction server are softwareinterfaces for one online system.
 7. The system of claim 1, wherein:said auction database stores data identifying said first user gameaccount and data identifying said second user game account.
 8. A methodof transferring privileges, comprising: selecting a game item in anonline game provided by a game server, wherein said game item isrepresented by item data stored in a game database connected to saidgame server, said item data is associated with a first user account, andsaid item data has an associated privilege in said online game;retrieving said item data from said game database; transferring auctionitem data and a first user identifier to an auction server, said auctionitem data corresponding to said item data and said first user identifiercorresponding to said first user account; disabling said item datastored in said game database so that said privilege is not available insaid online game; storing said transferred data in an auction databaseconnected to said auction server; presenting an auction for said gameitem at said auction server; accepting one or more bids at said auctionserver for said game item; determining a winning bid for said game itemfrom among accepted bids, said winning bid indicating a second useridentifier and said second user identifier corresponding to a seconduser account with said game server; transferring money based on saidwinning bid from an account indicated by said second user identifier toan account indicated by said first user identifier; updating said itemdata stored in said game database so that said item data is associatedwith said second user account; and enabling said item data stored insaid game database so that said privilege is available in said onlinegame.
 9. The method of claim 8, further comprising: encrypting saidauction item data before transferring said auction item data to saidauction server; and decrypting said auction item data.
 10. The method ofclaim 8, further comprising: transferring said auction item data andsaid second user identifier to said game server; verifying said auctionitem data transferred to said game server.
 11. The method of claim 8,wherein: transferring money includes requesting and confirmingtransferring funds through a third party financial service.
 12. Themethod of claim 8, wherein: said auction item data is a copy of saiditem data.
 13. The method of claim 8, wherein: said auction item data isa reference to said item data.
 14. A system for transferring onlineprivileges, comprising: a first server having a network connection andstoring data providing an online service; a first database connected tosaid first server, said first database storing data representing one ormore items, data representing a first user account, and datarepresenting a second user account, said item associated with said firstuser game account; an auction server having a network connection andconnected to said first server though said network connections, andstoring data providing an online auction for items from said firstserver; and an auction database connected to said auction server, saidauction database storing data representing one or more items receivedfrom said first server, data representing a first user auction account,and data representing a second user auction account.
 15. A computerprogram, stored on a tangible storage medium, for use in transferringprivileges, the program comprising executable instructions that cause acomputer to: select a game item in an online game provided by a gameserver, wherein said game item is represented by item data stored in agame database connected to said game server, said item data isassociated with a first user account, and said item data has anassociated privilege in said online game; retrieve said item data fromsaid game database; transfer auction item data and a first useridentifier to an auction server, said auction item data corresponding tosaid item data and said first user identifier corresponding to saidfirst user account; disable said item data stored in said game databaseso that said privilege is not available in said online game; confirm thecompletion of a transfer of money based on the completion of an auctionby said auction server, identified by said first user identifier; updatesaid item data stored in said game database so that said item data isassociated with a second user account identified by a second useridentifier received from said auction server; and enable said item datastored in said game database so that said privilege is available in saidonline game.
 16. A computer program, stored on a tangible storagemedium, for use in transferring privileges, the program comprisingexecutable instructions that cause a computer to: store game item dataand a first user identifier received from a game server, said first useridentifier corresponding to a first user account with said game server,and said game item data having an associated privilege in an online gameprovided by said game server; present an auction for said game item;accept one or more bids for said game item; determine a winning bid forsaid game item from among accepted bids, said winning bid indicating asecond user identifier and said second user identifier corresponding toa second user account with said game server; confirm the transfer ofmoney based on said winning bid from an account indicated by said seconduser identifier to an account indicated by said first user identifier;send a confirmation to said game server indicating the completion ofsaid auction and that said privilege is to be transferred from saidfirst user account to said second user account.
 17. A system fortransferring privileges, comprising: means for selecting a game item inan online game provided by a game server, wherein said game item isrepresented by item data stored in a game database connected to saidgame server, said item data is associated with a first user account, andsaid item data has an associated privilege in said online game; meansfor retrieving said item data from said game database; means fortransferring auction item data and a first user identifier to an auctionserver, said auction item data corresponding to said item data and saidfirst user identifier corresponding to said first user account; meansfor disabling said item data stored in said game database so that saidprivilege is not available in said online game; means for storing saidtransferred data in an auction database connected to said auctionserver; means for presenting an auction for said game item at saidauction server; means for accepting one or more bids at said auctionserver for said game item; means for determining a winning bid for saidgame item from among accepted bids, said winning bid indicating a seconduser identifier and said second user identifier corresponding to asecond user account with said game server; means for transferring moneybased on said winning bid from an account indicated by said second useridentifier to an account indicated by said first user identifier; meansfor updating said item data stored in said game database so that saiditem data is associated with said second user account; and means forenabling said item data stored in said game database so that saidprivilege is available in said online game.